From: Juergen Gross Date: Fri, 2 Oct 2015 11:43:35 +0000 (+0200) Subject: use masking operation instead of test_bit for RTDS bits X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~2453 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22?a=commitdiff_plain;h=bddb98662e78ea32ec12dea52611f79466c6065a;p=xen.git use masking operation instead of test_bit for RTDS bits Use a bit mask for testing of a set bit instead of test_bit in case no atomic operation is needed, as this will lead to smaller and more effective code. Signed-off-by: Juergen Gross Reviewed-by: Jan Beulich Reviewed-by: Andrew Cooper Acked-by: Dario Faggioli --- diff --git a/xen/common/sched_rt.c b/xen/common/sched_rt.c index 4b5c5e4c5b..6a341b11f0 100644 --- a/xen/common/sched_rt.c +++ b/xen/common/sched_rt.c @@ -931,7 +931,7 @@ rt_vcpu_sleep(const struct scheduler *ops, struct vcpu *vc) cpu_raise_softirq(vc->processor, SCHEDULE_SOFTIRQ); else if ( __vcpu_on_q(svc) ) __q_remove(svc); - else if ( test_bit(__RTDS_delayed_runq_add, &svc->flags) ) + else if ( svc->flags & RTDS_delayed_runq_add ) clear_bit(__RTDS_delayed_runq_add, &svc->flags); } @@ -1064,7 +1064,7 @@ rt_vcpu_wake(const struct scheduler *ops, struct vcpu *vc) * the Runqueue/DepletedQ. Instead, we set a flag so that it will be * put on the Runqueue/DepletedQ after the context has been saved. */ - if ( unlikely(test_bit(__RTDS_scheduled, &svc->flags)) ) + if ( unlikely(svc->flags & RTDS_scheduled) ) { set_bit(__RTDS_delayed_runq_add, &svc->flags); return;